{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 高德API的函数封装 week10"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 地理编码（geocode）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,在address输入地址  \n",
    "2、必填参数：key,address  \n",
    "3、选填参数：city，batch，sig，output，callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/georegeo#geo"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'114.088944,22.538509'"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import geocode\n",
    "geocode(\"9df9a46a9a045c9bb332e3fc0019464e\",\"广东省深圳市福田区体育馆\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：在同类型的建筑群里，通过地理编码找出制定目标建筑，从而方便记录及管理"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 逆地理编码（regeo）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,在location输入经纬度坐标  \n",
    "2、必填参数：key,location  \n",
    "3、选填参数：poitype,radius,extensions,batch,output,homeorcorp,roadlevel,sig,callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/georegeo#regeo"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'广东省深圳市福田区南园街道深圳福田区体育中心深圳市福田区少年业余体育学校'"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import regeo\n",
    "regeo(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.088944,22.538509')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：将经纬度转换为结构化的地址，方便人们获取周围的相关信息"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 步行路径规划（walking）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标  \n",
    "2、必填参数：key，origin，destination  \n",
    "3、选填参数：sig，output，callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#walk"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>instruction</th>\n",
       "      <th>orientation</th>\n",
       "      <th>road</th>\n",
       "      <th>distance</th>\n",
       "      <th>duration</th>\n",
       "      <th>polyline</th>\n",
       "      <th>action</th>\n",
       "      <th>assistant_action</th>\n",
       "      <th>walk_type</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>沿园岭四街向西步行124米直行</td>\n",
       "      <td>西</td>\n",
       "      <td>园岭四街</td>\n",
       "      <td>124</td>\n",
       "      <td>99</td>\n",
       "      <td>114.097418,22.551441;114.097109,22.551441;114....</td>\n",
       "      <td>直行</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>沿百花一路向西步行11米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>百花一路</td>\n",
       "      <td>11</td>\n",
       "      <td>9</td>\n",
       "      <td>114.096207,22.551415;114.096102,22.551415</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>沿上步路向南步行155米向右前方行走</td>\n",
       "      <td>南</td>\n",
       "      <td>上步路</td>\n",
       "      <td>155</td>\n",
       "      <td>124</td>\n",
       "      <td>114.096098,22.551411;114.096111,22.550694;114....</td>\n",
       "      <td>向右前方行走</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>沿红荔路步行118米向右前方行走</td>\n",
       "      <td>[]</td>\n",
       "      <td>红荔路</td>\n",
       "      <td>118</td>\n",
       "      <td>94</td>\n",
       "      <td>114.096137,22.550004;114.095894,22.549371;114....</td>\n",
       "      <td>向右前方行走</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>沿红荔路向西步行266米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>红荔路</td>\n",
       "      <td>266</td>\n",
       "      <td>213</td>\n",
       "      <td>114.095595,22.549123;114.095117,22.549115;114....</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>沿燕南路向南步行932米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>燕南路</td>\n",
       "      <td>932</td>\n",
       "      <td>746</td>\n",
       "      <td>114.092999,22.549041;114.092999,22.548997;114....</td>\n",
       "      <td>右转</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>沿深南中路向西步行396米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>396</td>\n",
       "      <td>317</td>\n",
       "      <td>114.093151,22.540543;114.093103,22.540543;114....</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>沿华发南路向南步行212米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>华发南路</td>\n",
       "      <td>212</td>\n",
       "      <td>170</td>\n",
       "      <td>114.089293,22.540477;114.089288,22.540208;114....</td>\n",
       "      <td>右转</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>向西步行39米到达目的地</td>\n",
       "      <td>西</td>\n",
       "      <td>[]</td>\n",
       "      <td>39</td>\n",
       "      <td>31</td>\n",
       "      <td>114.089314,22.538546;114.089197,22.538546;114....</td>\n",
       "      <td>[]</td>\n",
       "      <td>到达目的地</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          instruction orientation  road distance duration  \\\n",
       "0     沿园岭四街向西步行124米直行           西  园岭四街      124       99   \n",
       "1      沿百花一路向西步行11米左转           西  百花一路       11        9   \n",
       "2  沿上步路向南步行155米向右前方行走           南   上步路      155      124   \n",
       "3    沿红荔路步行118米向右前方行走          []   红荔路      118       94   \n",
       "4      沿红荔路向西步行266米左转           西   红荔路      266      213   \n",
       "5      沿燕南路向南步行932米右转           南   燕南路      932      746   \n",
       "6     沿深南中路向西步行396米左转           西  深南中路      396      317   \n",
       "7     沿华发南路向南步行212米右转           南  华发南路      212      170   \n",
       "8        向西步行39米到达目的地           西    []       39       31   \n",
       "\n",
       "                                            polyline  action assistant_action  \\\n",
       "0  114.097418,22.551441;114.097109,22.551441;114....      直行               []   \n",
       "1          114.096207,22.551415;114.096102,22.551415      左转               []   \n",
       "2  114.096098,22.551411;114.096111,22.550694;114....  向右前方行走               []   \n",
       "3  114.096137,22.550004;114.095894,22.549371;114....  向右前方行走               []   \n",
       "4  114.095595,22.549123;114.095117,22.549115;114....      左转               []   \n",
       "5  114.092999,22.549041;114.092999,22.548997;114....      右转               []   \n",
       "6  114.093151,22.540543;114.093103,22.540543;114....      左转               []   \n",
       "7  114.089293,22.540477;114.089288,22.540208;114....      右转               []   \n",
       "8  114.089314,22.538546;114.089197,22.538546;114....      []            到达目的地   \n",
       "\n",
       "  walk_type  \n",
       "0         0  \n",
       "1         0  \n",
       "2         0  \n",
       "3         0  \n",
       "4         0  \n",
       "5         0  \n",
       "6         0  \n",
       "7         0  \n",
       "8         0  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import walking\n",
    "pd.json_normalize(walking(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.097455,22.551175','114.088944,22.538509'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：外出旅行时必不可少的产品功能"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 公交车路径规划（integrated）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标，city为城市/跨城规划时的起点城市  \n",
    "2、必填参数：key，origin，destination，city  \n",
    "3、选填参数：cityd，extensions，strategy，nightflag，date，time，sig，output，callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#bus"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "Empty DataFrame\n",
       "Columns: []\n",
       "Index: []"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import integrated\n",
    "pd.json_normalize(integrated(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.097455,22.551175','114.088944,22.538509','深圳'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 驾车路径规划（driving）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标  \n",
    "2、必填参数：key，origin，destination  \n",
    "3、选填参数数:originid,destinationid,origintype,destinationtype,strategy,waypoints,  \n",
    "avoidpolygons,avoidroad，province,number,cartype,ferry,roadaggregation,nosteps,sig，output，callback,extensions  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#driving"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>instruction</th>\n",
       "      <th>orientation</th>\n",
       "      <th>road</th>\n",
       "      <th>distance</th>\n",
       "      <th>tolls</th>\n",
       "      <th>toll_distance</th>\n",
       "      <th>toll_road</th>\n",
       "      <th>duration</th>\n",
       "      <th>polyline</th>\n",
       "      <th>action</th>\n",
       "      <th>assistant_action</th>\n",
       "      <th>tmcs</th>\n",
       "      <th>cities</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>沿园岭四街向西行驶127米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>园岭四街</td>\n",
       "      <td>127</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>95</td>\n",
       "      <td>114.097448,22.551441;114.097418,22.551441;114....</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '3', 'status': '畅通'...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>沿上步路途径上步中路向南行驶1.2千米左转</td>\n",
       "      <td>南</td>\n",
       "      <td>上步路</td>\n",
       "      <td>1182</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>328</td>\n",
       "      <td>114.096094,22.551411;114.096137,22.550004;114....</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '155', 'status': '畅...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>沿深南中路向东行驶394米右转</td>\n",
       "      <td>东</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>394</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>67</td>\n",
       "      <td>114.096406,22.540608;114.09681,22.540621;114.0...</td>\n",
       "      <td>右转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '41', 'status': '畅通...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>沿同心路向南行驶211米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>同心路</td>\n",
       "      <td>211</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>31</td>\n",
       "      <td>114.100273,22.540694;114.100291,22.540204;114....</td>\n",
       "      <td>右转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '54', 'status': '畅通...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>沿南园路向西行驶1.1千米右转</td>\n",
       "      <td>西</td>\n",
       "      <td>南园路</td>\n",
       "      <td>1134</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>328</td>\n",
       "      <td>114.100299,22.538772;114.099939,22.538815;114....</td>\n",
       "      <td>右转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '137', 'status': '畅...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>沿华发南路向北行驶51米左转</td>\n",
       "      <td>北</td>\n",
       "      <td>华发南路</td>\n",
       "      <td>51</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>23</td>\n",
       "      <td>114.089314,22.538086;114.089314,22.538546</td>\n",
       "      <td>左转</td>\n",
       "      <td>[]</td>\n",
       "      <td>[{'lcode': [], 'distance': '51', 'status': '拥堵...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>向西行驶39米到达目的地</td>\n",
       "      <td>西</td>\n",
       "      <td>NaN</td>\n",
       "      <td>39</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>[]</td>\n",
       "      <td>23</td>\n",
       "      <td>114.089314,22.538546;114.089193,22.538542;114....</td>\n",
       "      <td>[]</td>\n",
       "      <td>到达目的地</td>\n",
       "      <td>[{'lcode': [], 'distance': '13', 'status': '未知...</td>\n",
       "      <td>[{'name': '深圳市', 'citycode': '0755', 'adcode':...</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             instruction orientation  road distance tolls toll_distance  \\\n",
       "0        沿园岭四街向西行驶127米左转           西  园岭四街      127     0             0   \n",
       "1  沿上步路途径上步中路向南行驶1.2千米左转           南   上步路     1182     0             0   \n",
       "2        沿深南中路向东行驶394米右转           东  深南中路      394     0             0   \n",
       "3         沿同心路向南行驶211米右转           南   同心路      211     0             0   \n",
       "4        沿南园路向西行驶1.1千米右转           西   南园路     1134     0             0   \n",
       "5         沿华发南路向北行驶51米左转           北  华发南路       51     0             0   \n",
       "6           向西行驶39米到达目的地           西   NaN       39     0             0   \n",
       "\n",
       "  toll_road duration                                           polyline  \\\n",
       "0        []       95  114.097448,22.551441;114.097418,22.551441;114....   \n",
       "1        []      328  114.096094,22.551411;114.096137,22.550004;114....   \n",
       "2        []       67  114.096406,22.540608;114.09681,22.540621;114.0...   \n",
       "3        []       31  114.100273,22.540694;114.100291,22.540204;114....   \n",
       "4        []      328  114.100299,22.538772;114.099939,22.538815;114....   \n",
       "5        []       23          114.089314,22.538086;114.089314,22.538546   \n",
       "6        []       23  114.089314,22.538546;114.089193,22.538542;114....   \n",
       "\n",
       "  action assistant_action                                               tmcs  \\\n",
       "0     左转               []  [{'lcode': [], 'distance': '3', 'status': '畅通'...   \n",
       "1     左转               []  [{'lcode': [], 'distance': '155', 'status': '畅...   \n",
       "2     右转               []  [{'lcode': [], 'distance': '41', 'status': '畅通...   \n",
       "3     右转               []  [{'lcode': [], 'distance': '54', 'status': '畅通...   \n",
       "4     右转               []  [{'lcode': [], 'distance': '137', 'status': '畅...   \n",
       "5     左转               []  [{'lcode': [], 'distance': '51', 'status': '拥堵...   \n",
       "6     []            到达目的地  [{'lcode': [], 'distance': '13', 'status': '未知...   \n",
       "\n",
       "                                              cities  \n",
       "0  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "1  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "2  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "3  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "4  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "5  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  \n",
       "6  [{'name': '深圳市', 'citycode': '0755', 'adcode':...  "
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import driving\n",
    "pd.json_normalize(driving(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.097455,22.551175','114.088944,22.538509'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：热爱自驾游的群体的首选"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 骑行路径规划（bicycling）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标  \n",
    "2、必填参数：key，origin，destination    \n",
    "3、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#t8"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>action</th>\n",
       "      <th>assistant_action</th>\n",
       "      <th>distance</th>\n",
       "      <th>duration</th>\n",
       "      <th>instruction</th>\n",
       "      <th>orientation</th>\n",
       "      <th>polyline</th>\n",
       "      <th>road</th>\n",
       "      <th>walk_type</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>135</td>\n",
       "      <td>32</td>\n",
       "      <td>沿园岭四街向西骑行135米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>114.097418,22.551441;114.097109,22.551441;114....</td>\n",
       "      <td>园岭四街</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>294</td>\n",
       "      <td>71</td>\n",
       "      <td>沿上步路向南骑行294米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.096098,22.551411;114.096111,22.550694;114....</td>\n",
       "      <td>上步路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>直行</td>\n",
       "      <td></td>\n",
       "      <td>66</td>\n",
       "      <td>16</td>\n",
       "      <td>沿上步路向南骑行66米直行</td>\n",
       "      <td>南</td>\n",
       "      <td>114.09615,22.548815;114.09615,22.548477;114.09...</td>\n",
       "      <td>上步路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>直行</td>\n",
       "      <td></td>\n",
       "      <td>179</td>\n",
       "      <td>43</td>\n",
       "      <td>沿上步中路向南骑行179米直行</td>\n",
       "      <td>南</td>\n",
       "      <td>114.09615,22.548207;114.096168,22.547287;114.0...</td>\n",
       "      <td>上步中路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>右转</td>\n",
       "      <td>None</td>\n",
       "      <td>562</td>\n",
       "      <td>135</td>\n",
       "      <td>沿上步路向南骑行562米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.096172,22.546584;114.096189,22.546181;114....</td>\n",
       "      <td>上步路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>102</td>\n",
       "      <td>24</td>\n",
       "      <td>沿深南中路骑行102米右转</td>\n",
       "      <td></td>\n",
       "      <td>114.09628,22.541484;114.096263,22.541419;114.0...</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>282</td>\n",
       "      <td>68</td>\n",
       "      <td>沿深南中路向西骑行282米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>114.095907,22.540668;114.095668,22.540664;114....</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>12</td>\n",
       "      <td>3</td>\n",
       "      <td>沿燕南路向南骑行12米左转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.093151,22.54066;114.093151,22.540547</td>\n",
       "      <td>燕南路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>59</td>\n",
       "      <td>14</td>\n",
       "      <td>沿深南中路向东骑行59米右转</td>\n",
       "      <td>东</td>\n",
       "      <td>114.093151,22.540543;114.093741,22.540556</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>198</td>\n",
       "      <td>48</td>\n",
       "      <td>沿松岭路向南骑行198米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.093741,22.540556;114.093741,22.540122;114....</td>\n",
       "      <td>松岭路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>467</td>\n",
       "      <td>112</td>\n",
       "      <td>沿南园路向西骑行467米右转</td>\n",
       "      <td>西</td>\n",
       "      <td>114.093772,22.538754;114.093394,22.538655;114....</td>\n",
       "      <td>南园路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>51</td>\n",
       "      <td>12</td>\n",
       "      <td>沿华发南路向北骑行51米左转</td>\n",
       "      <td>北</td>\n",
       "      <td>114.089314,22.538086;114.089314,22.538312;114....</td>\n",
       "      <td>华发南路</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td></td>\n",
       "      <td>到达目的地</td>\n",
       "      <td>39</td>\n",
       "      <td>9</td>\n",
       "      <td>向西骑行39米到达目的地</td>\n",
       "      <td>西</td>\n",
       "      <td>114.089314,22.538546;114.089197,22.538546;114....</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   action assistant_action  distance  duration      instruction orientation  \\\n",
       "0      左转                        135        32  沿园岭四街向西骑行135米左转           西   \n",
       "1      右转                        294        71   沿上步路向南骑行294米右转           南   \n",
       "2      直行                         66        16    沿上步路向南骑行66米直行           南   \n",
       "3      直行                        179        43  沿上步中路向南骑行179米直行           南   \n",
       "4      右转             None       562       135   沿上步路向南骑行562米右转           南   \n",
       "5      右转                        102        24    沿深南中路骑行102米右转               \n",
       "6      左转                        282        68  沿深南中路向西骑行282米左转           西   \n",
       "7      左转                         12         3    沿燕南路向南骑行12米左转           南   \n",
       "8      右转                         59        14   沿深南中路向东骑行59米右转           东   \n",
       "9      右转                        198        48   沿松岭路向南骑行198米右转           南   \n",
       "10     右转                        467       112   沿南园路向西骑行467米右转           西   \n",
       "11     左转                         51        12   沿华发南路向北骑行51米左转           北   \n",
       "12                   到达目的地        39         9     向西骑行39米到达目的地           西   \n",
       "\n",
       "                                             polyline  road  walk_type  \n",
       "0   114.097418,22.551441;114.097109,22.551441;114....  园岭四街          0  \n",
       "1   114.096098,22.551411;114.096111,22.550694;114....   上步路          0  \n",
       "2   114.09615,22.548815;114.09615,22.548477;114.09...   上步路          0  \n",
       "3   114.09615,22.548207;114.096168,22.547287;114.0...  上步中路          0  \n",
       "4   114.096172,22.546584;114.096189,22.546181;114....   上步路          0  \n",
       "5   114.09628,22.541484;114.096263,22.541419;114.0...  深南中路          0  \n",
       "6   114.095907,22.540668;114.095668,22.540664;114....  深南中路          0  \n",
       "7            114.093151,22.54066;114.093151,22.540547   燕南路          0  \n",
       "8           114.093151,22.540543;114.093741,22.540556  深南中路          0  \n",
       "9   114.093741,22.540556;114.093741,22.540122;114....   松岭路          0  \n",
       "10  114.093772,22.538754;114.093394,22.538655;114....   南园路          0  \n",
       "11  114.089314,22.538086;114.089314,22.538312;114....  华发南路          0  \n",
       "12  114.089314,22.538546;114.089197,22.538546;114....                0  "
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import bicycling\n",
    "pd.json_normalize(bicycling(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.097455,22.551175','114.088944,22.538509'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：为骑行爱好者设计骑行道路，进行难度等级划分"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 货车路径规划（truck）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标  \n",
    "2、必填参数：key，origin，destination，size  \n",
    "3、选填参数:originid,origintype,destinationid,destinationtype,diu,strategy,waypoints,height,width,load,weight,  \n",
    "axis,province,number,cartype,avoidpolygons,showpolyline,nosteps  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#t9"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>action</th>\n",
       "      <th>assistant_action</th>\n",
       "      <th>cities</th>\n",
       "      <th>distance</th>\n",
       "      <th>duration</th>\n",
       "      <th>instruction</th>\n",
       "      <th>orientation</th>\n",
       "      <th>polyline</th>\n",
       "      <th>road</th>\n",
       "      <th>tmcs</th>\n",
       "      <th>toll_distance</th>\n",
       "      <th>toll_road</th>\n",
       "      <th>tolls</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>127</td>\n",
       "      <td>44</td>\n",
       "      <td>沿园岭四街向西行驶127米左转</td>\n",
       "      <td>西</td>\n",
       "      <td>114.097448,22.551441;114.097418,22.551441;114....</td>\n",
       "      <td>园岭四街</td>\n",
       "      <td>[{'distance': 3, 'polyline': '114.097448,22.55...</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>1171</td>\n",
       "      <td>203</td>\n",
       "      <td>沿上步路途径上步中路向南行驶1.2千米左转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.096094,22.551411;114.096137,22.550004;114....</td>\n",
       "      <td>上步路</td>\n",
       "      <td>[{'distance': 155, 'polyline': '114.096094,22....</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>394</td>\n",
       "      <td>50</td>\n",
       "      <td>沿深南中路向东行驶394米右转</td>\n",
       "      <td>东</td>\n",
       "      <td>114.096406,22.540608;114.09681,22.540621;114.0...</td>\n",
       "      <td>深南中路</td>\n",
       "      <td>[{'distance': 41, 'polyline': '114.096406,22.5...</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>211</td>\n",
       "      <td>24</td>\n",
       "      <td>沿同心路向南行驶211米右转</td>\n",
       "      <td>南</td>\n",
       "      <td>114.100273,22.540694;114.100291,22.540204;114....</td>\n",
       "      <td>同心路</td>\n",
       "      <td>[{'distance': 54, 'polyline': '114.100273,22.5...</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>右转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>1098</td>\n",
       "      <td>262</td>\n",
       "      <td>沿南园路向西行驶1.1千米右转</td>\n",
       "      <td>西</td>\n",
       "      <td>114.100299,22.538772;114.099939,22.538815;114....</td>\n",
       "      <td>南园路</td>\n",
       "      <td>[{'distance': 137, 'polyline': '114.100299,22....</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>左转</td>\n",
       "      <td></td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>51</td>\n",
       "      <td>16</td>\n",
       "      <td>沿华发南路向北行驶51米左转</td>\n",
       "      <td>北</td>\n",
       "      <td>114.089314,22.538086;114.089314,22.538546</td>\n",
       "      <td>华发南路</td>\n",
       "      <td>[{'distance': 51, 'polyline': '114.089314,22.5...</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td></td>\n",
       "      <td>到达目的地</td>\n",
       "      <td>[{'adcode': '440304', 'citycode': None, 'distr...</td>\n",
       "      <td>39</td>\n",
       "      <td>23</td>\n",
       "      <td>向西行驶39米到达目的地</td>\n",
       "      <td>西</td>\n",
       "      <td>114.089314,22.538546;114.089193,22.538542;114....</td>\n",
       "      <td>None</td>\n",
       "      <td>[{'distance': 13, 'polyline': '114.089314,22.5...</td>\n",
       "      <td>0</td>\n",
       "      <td></td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  action assistant_action                                             cities  \\\n",
       "0     左转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "1     左转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "2     右转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "3     右转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "4     右转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "5     左转                   [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "6                   到达目的地  [{'adcode': '440304', 'citycode': None, 'distr...   \n",
       "\n",
       "   distance  duration            instruction orientation  \\\n",
       "0       127        44        沿园岭四街向西行驶127米左转           西   \n",
       "1      1171       203  沿上步路途径上步中路向南行驶1.2千米左转           南   \n",
       "2       394        50        沿深南中路向东行驶394米右转           东   \n",
       "3       211        24         沿同心路向南行驶211米右转           南   \n",
       "4      1098       262        沿南园路向西行驶1.1千米右转           西   \n",
       "5        51        16         沿华发南路向北行驶51米左转           北   \n",
       "6        39        23           向西行驶39米到达目的地           西   \n",
       "\n",
       "                                            polyline  road  \\\n",
       "0  114.097448,22.551441;114.097418,22.551441;114....  园岭四街   \n",
       "1  114.096094,22.551411;114.096137,22.550004;114....   上步路   \n",
       "2  114.096406,22.540608;114.09681,22.540621;114.0...  深南中路   \n",
       "3  114.100273,22.540694;114.100291,22.540204;114....   同心路   \n",
       "4  114.100299,22.538772;114.099939,22.538815;114....   南园路   \n",
       "5          114.089314,22.538086;114.089314,22.538546  华发南路   \n",
       "6  114.089314,22.538546;114.089193,22.538542;114....  None   \n",
       "\n",
       "                                                tmcs  toll_distance toll_road  \\\n",
       "0  [{'distance': 3, 'polyline': '114.097448,22.55...              0             \n",
       "1  [{'distance': 155, 'polyline': '114.096094,22....              0             \n",
       "2  [{'distance': 41, 'polyline': '114.096406,22.5...              0             \n",
       "3  [{'distance': 54, 'polyline': '114.100273,22.5...              0             \n",
       "4  [{'distance': 137, 'polyline': '114.100299,22....              0             \n",
       "5  [{'distance': 51, 'polyline': '114.089314,22.5...              0             \n",
       "6  [{'distance': 13, 'polyline': '114.089314,22.5...              0             \n",
       "\n",
       "   tolls  \n",
       "0      0  \n",
       "1      0  \n",
       "2      0  \n",
       "3      0  \n",
       "4      0  \n",
       "5      0  \n",
       "6      0  "
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import truck\n",
    "pd.json_normalize(truck(\"6efe92dfc859daf4e0114dd2a3e2c576\",'114.097455,22.551175','114.088944,22.538509',2))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 使用途径：货拉拉等搬家公司的导航选择"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 距离测量（distance）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key,可使用geocode函数获取origin和destination的具体经纬度坐标  \n",
    "2、必填参数：key，origin，destination  \n",
    "3、选填参数:type,sig，output，callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/direction#distance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'3091'"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import distance\n",
    "distance(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.097455,22.551175','114.088944,22.538509')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 行政区域查询（district）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key  \n",
    "2、必填参数：key  \n",
    "3、选填参数:keywords,subdistrict,page,offset,extensions,filter,callback,output  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/district"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>citycode</th>\n",
       "      <th>adcode</th>\n",
       "      <th>name</th>\n",
       "      <th>center</th>\n",
       "      <th>level</th>\n",
       "      <th>districts</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>[]</td>\n",
       "      <td>230000</td>\n",
       "      <td>黑龙江省</td>\n",
       "      <td>126.642464,45.756967</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>[]</td>\n",
       "      <td>440000</td>\n",
       "      <td>广东省</td>\n",
       "      <td>113.280637,23.125178</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>[]</td>\n",
       "      <td>410000</td>\n",
       "      <td>河南省</td>\n",
       "      <td>113.665412,34.757975</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>[]</td>\n",
       "      <td>150000</td>\n",
       "      <td>内蒙古自治区</td>\n",
       "      <td>111.670801,40.818311</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>[]</td>\n",
       "      <td>650000</td>\n",
       "      <td>新疆维吾尔自治区</td>\n",
       "      <td>87.617733,43.792818</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>[]</td>\n",
       "      <td>210000</td>\n",
       "      <td>辽宁省</td>\n",
       "      <td>123.429096,41.796767</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>[]</td>\n",
       "      <td>420000</td>\n",
       "      <td>湖北省</td>\n",
       "      <td>114.298572,30.584355</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>[]</td>\n",
       "      <td>610000</td>\n",
       "      <td>陕西省</td>\n",
       "      <td>108.948024,34.263161</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>[]</td>\n",
       "      <td>520000</td>\n",
       "      <td>贵州省</td>\n",
       "      <td>106.713478,26.578343</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>021</td>\n",
       "      <td>310000</td>\n",
       "      <td>上海市</td>\n",
       "      <td>121.472644,31.231706</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>[]</td>\n",
       "      <td>370000</td>\n",
       "      <td>山东省</td>\n",
       "      <td>117.000923,36.675807</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>[]</td>\n",
       "      <td>340000</td>\n",
       "      <td>安徽省</td>\n",
       "      <td>117.283042,31.86119</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>023</td>\n",
       "      <td>500000</td>\n",
       "      <td>重庆市</td>\n",
       "      <td>106.504962,29.533155</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>[]</td>\n",
       "      <td>540000</td>\n",
       "      <td>西藏自治区</td>\n",
       "      <td>91.132212,29.660361</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>[]</td>\n",
       "      <td>430000</td>\n",
       "      <td>湖南省</td>\n",
       "      <td>112.982279,28.19409</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>[]</td>\n",
       "      <td>460000</td>\n",
       "      <td>海南省</td>\n",
       "      <td>110.33119,20.031971</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>[]</td>\n",
       "      <td>630000</td>\n",
       "      <td>青海省</td>\n",
       "      <td>101.778916,36.623178</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>[]</td>\n",
       "      <td>350000</td>\n",
       "      <td>福建省</td>\n",
       "      <td>119.306239,26.075302</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>[]</td>\n",
       "      <td>640000</td>\n",
       "      <td>宁夏回族自治区</td>\n",
       "      <td>106.278179,38.46637</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>[]</td>\n",
       "      <td>450000</td>\n",
       "      <td>广西壮族自治区</td>\n",
       "      <td>108.320004,22.82402</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>[]</td>\n",
       "      <td>320000</td>\n",
       "      <td>江苏省</td>\n",
       "      <td>118.767413,32.041544</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>[]</td>\n",
       "      <td>330000</td>\n",
       "      <td>浙江省</td>\n",
       "      <td>120.153576,30.287459</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>[]</td>\n",
       "      <td>360000</td>\n",
       "      <td>江西省</td>\n",
       "      <td>115.892151,28.676493</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>1886</td>\n",
       "      <td>710000</td>\n",
       "      <td>台湾省</td>\n",
       "      <td>121.509062,25.044332</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>[]</td>\n",
       "      <td>130000</td>\n",
       "      <td>河北省</td>\n",
       "      <td>114.502461,38.045474</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>1852</td>\n",
       "      <td>810000</td>\n",
       "      <td>香港特别行政区</td>\n",
       "      <td>114.173355,22.320048</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>1853</td>\n",
       "      <td>820000</td>\n",
       "      <td>澳门特别行政区</td>\n",
       "      <td>113.54909,22.198951</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>[]</td>\n",
       "      <td>620000</td>\n",
       "      <td>甘肃省</td>\n",
       "      <td>103.823557,36.058039</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>[]</td>\n",
       "      <td>510000</td>\n",
       "      <td>四川省</td>\n",
       "      <td>104.065735,30.659462</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>[]</td>\n",
       "      <td>220000</td>\n",
       "      <td>吉林省</td>\n",
       "      <td>125.3245,43.886841</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>022</td>\n",
       "      <td>120000</td>\n",
       "      <td>天津市</td>\n",
       "      <td>117.190182,39.125596</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>31</th>\n",
       "      <td>[]</td>\n",
       "      <td>140000</td>\n",
       "      <td>山西省</td>\n",
       "      <td>112.549248,37.857014</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
       "      <td>[]</td>\n",
       "      <td>530000</td>\n",
       "      <td>云南省</td>\n",
       "      <td>102.712251,25.040609</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>010</td>\n",
       "      <td>110000</td>\n",
       "      <td>北京市</td>\n",
       "      <td>116.405285,39.904989</td>\n",
       "      <td>province</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   citycode  adcode      name                center     level districts\n",
       "0        []  230000      黑龙江省  126.642464,45.756967  province        []\n",
       "1        []  440000       广东省  113.280637,23.125178  province        []\n",
       "2        []  410000       河南省  113.665412,34.757975  province        []\n",
       "3        []  150000    内蒙古自治区  111.670801,40.818311  province        []\n",
       "4        []  650000  新疆维吾尔自治区   87.617733,43.792818  province        []\n",
       "5        []  210000       辽宁省  123.429096,41.796767  province        []\n",
       "6        []  420000       湖北省  114.298572,30.584355  province        []\n",
       "7        []  610000       陕西省  108.948024,34.263161  province        []\n",
       "8        []  520000       贵州省  106.713478,26.578343  province        []\n",
       "9       021  310000       上海市  121.472644,31.231706  province        []\n",
       "10       []  370000       山东省  117.000923,36.675807  province        []\n",
       "11       []  340000       安徽省   117.283042,31.86119  province        []\n",
       "12      023  500000       重庆市  106.504962,29.533155  province        []\n",
       "13       []  540000     西藏自治区   91.132212,29.660361  province        []\n",
       "14       []  430000       湖南省   112.982279,28.19409  province        []\n",
       "15       []  460000       海南省   110.33119,20.031971  province        []\n",
       "16       []  630000       青海省  101.778916,36.623178  province        []\n",
       "17       []  350000       福建省  119.306239,26.075302  province        []\n",
       "18       []  640000   宁夏回族自治区   106.278179,38.46637  province        []\n",
       "19       []  450000   广西壮族自治区   108.320004,22.82402  province        []\n",
       "20       []  320000       江苏省  118.767413,32.041544  province        []\n",
       "21       []  330000       浙江省  120.153576,30.287459  province        []\n",
       "22       []  360000       江西省  115.892151,28.676493  province        []\n",
       "23     1886  710000       台湾省  121.509062,25.044332  province        []\n",
       "24       []  130000       河北省  114.502461,38.045474  province        []\n",
       "25     1852  810000   香港特别行政区  114.173355,22.320048  province        []\n",
       "26     1853  820000   澳门特别行政区   113.54909,22.198951  province        []\n",
       "27       []  620000       甘肃省  103.823557,36.058039  province        []\n",
       "28       []  510000       四川省  104.065735,30.659462  province        []\n",
       "29       []  220000       吉林省    125.3245,43.886841  province        []\n",
       "30      022  120000       天津市  117.190182,39.125596  province        []\n",
       "31       []  140000       山西省  112.549248,37.857014  province        []\n",
       "32       []  530000       云南省  102.712251,25.040609  province        []\n",
       "33      010  110000       北京市  116.405285,39.904989  province        []"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import district\n",
    "pd.json_normalize(district(\"9df9a46a9a045c9bb332e3fc0019464e\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 搜索POI（text）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key  \n",
    "2、必填参数：key,keywords或types  \n",
    "3、选填参数:city,citylimit,children,offset,page,extensions,sig,output,callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/search"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>parent</th>\n",
       "      <th>address</th>\n",
       "      <th>distance</th>\n",
       "      <th>pname</th>\n",
       "      <th>importance</th>\n",
       "      <th>biz_type</th>\n",
       "      <th>cityname</th>\n",
       "      <th>type</th>\n",
       "      <th>photos</th>\n",
       "      <th>typecode</th>\n",
       "      <th>...</th>\n",
       "      <th>adname</th>\n",
       "      <th>name</th>\n",
       "      <th>location</th>\n",
       "      <th>tel</th>\n",
       "      <th>shopid</th>\n",
       "      <th>id</th>\n",
       "      <th>biz_ext.cost</th>\n",
       "      <th>biz_ext.rating</th>\n",
       "      <th>biz_ext.meal_ordering</th>\n",
       "      <th>biz_ext.seat_ordering</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>[]</td>\n",
       "      <td>正义路8号(市政府斜对面)</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>隆和居美食城(正义路)</td>\n",
       "      <td>116.406575,39.903422</td>\n",
       "      <td>010-65263265</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7ZDMP</td>\n",
       "      <td>72.00</td>\n",
       "      <td>4.3</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>[]</td>\n",
       "      <td>正义路东交民巷28号楼A座(首都宾馆北门)</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;四川菜(川菜)</td>\n",
       "      <td>[{'provider': [], 'title': '菜品', 'url': 'http:...</td>\n",
       "      <td>050102</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>静园川菜</td>\n",
       "      <td>116.408019,39.902449</td>\n",
       "      <td>010-65244156;13910469318</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7I1TH</td>\n",
       "      <td>69.00</td>\n",
       "      <td>4.0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>[]</td>\n",
       "      <td>西长安街天安门广场西侧宴会厅</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;综合酒楼</td>\n",
       "      <td>[{'provider': [], 'title': '产品图', 'url': 'http...</td>\n",
       "      <td>050101</td>\n",
       "      <td>...</td>\n",
       "      <td>西城区</td>\n",
       "      <td>人民大会堂宴会厅</td>\n",
       "      <td>116.393711,39.904989</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A8758C</td>\n",
       "      <td>882.00</td>\n",
       "      <td>4.5</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>[]</td>\n",
       "      <td>南河沿大街103-1号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>客家菜馆(南河沿店)</td>\n",
       "      <td>116.406420,39.909707</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7WWYT</td>\n",
       "      <td>62.00</td>\n",
       "      <td>3.4</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>[]</td>\n",
       "      <td>台基厂大街10号(台基厂三条路口)</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>松鹤楼(台基厂店)</td>\n",
       "      <td>116.411862,39.903472</td>\n",
       "      <td>010-65279255;010-65278195</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7C2QO</td>\n",
       "      <td>180.00</td>\n",
       "      <td>4.1</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>[]</td>\n",
       "      <td>北翔凤胡同11号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;特色/地方风味餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050118</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>利群烤鸭店(前门店)</td>\n",
       "      <td>116.406198,39.898268</td>\n",
       "      <td>010-67055578;010-67025681</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7ZRQ8</td>\n",
       "      <td>120.00</td>\n",
       "      <td>3.5</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>B000A10FBB</td>\n",
       "      <td>东华门街道东长安街33号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': '产品图', 'url': 'http...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>北京饭店宴会厅</td>\n",
       "      <td>116.408190,39.908770</td>\n",
       "      <td>010-65137766;010-85009688</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A81GNS</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>[]</td>\n",
       "      <td>东交民巷44号院</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;老字号</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050116</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>东来顺(天安门店)</td>\n",
       "      <td>116.400135,39.900944</td>\n",
       "      <td>010-65241042</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A804YB</td>\n",
       "      <td>130.00</td>\n",
       "      <td>3.4</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>B000A83LNO</td>\n",
       "      <td>东长安街1号东方广场2层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>长安壹号(东方新天地)</td>\n",
       "      <td>116.415042,39.909957</td>\n",
       "      <td>010-65109608</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7BU0J</td>\n",
       "      <td>382.00</td>\n",
       "      <td>4.0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>B000A10FBB</td>\n",
       "      <td>东长安街33号北京饭店C座7层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': '产品图', 'url': 'http...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>北京饭店谭家菜(装修中)</td>\n",
       "      <td>116.408321,39.908792</td>\n",
       "      <td>010-65137766</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A81JDJ</td>\n",
       "      <td>[]</td>\n",
       "      <td>4.0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>[]</td>\n",
       "      <td>东交民巷37号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;特色/地方风味餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050118</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>仿膳饭庄</td>\n",
       "      <td>116.400006,39.902821</td>\n",
       "      <td>010-65233106;010-65233105</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A6ECAC</td>\n",
       "      <td>206.00</td>\n",
       "      <td>3.9</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>[]</td>\n",
       "      <td>东交民巷44号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;北京菜</td>\n",
       "      <td>[{'provider': [], 'title': '产品图', 'url': 'http...</td>\n",
       "      <td>050111</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>全聚德烤鸭店(天安门店)</td>\n",
       "      <td>116.400068,39.901436</td>\n",
       "      <td>010-65132855;010-65122265</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A83BNF</td>\n",
       "      <td>170.00</td>\n",
       "      <td>4.0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>[]</td>\n",
       "      <td>南河沿大街华龙街中段111号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': '产品图', 'url': 'http...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>毛小青美食城</td>\n",
       "      <td>116.407070,39.910850</td>\n",
       "      <td>010-65129110</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A2BB76</td>\n",
       "      <td>48.00</td>\n",
       "      <td>3.5</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>B000A29433</td>\n",
       "      <td>东长安街10号长安大厦9层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;外国餐厅;日本料理</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050202</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>日本桥怀石料理(东长安街店)</td>\n",
       "      <td>116.409096,39.907344</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A83CQN</td>\n",
       "      <td>360.00</td>\n",
       "      <td>4.4</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>B0FFHLLAPG</td>\n",
       "      <td>南河沿大街华龙街E座贵宾楼北侧330米</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;火锅店</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050117</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>东来顺(华龙街店)</td>\n",
       "      <td>116.407130,39.911891</td>\n",
       "      <td>010-65595084</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A83BPC</td>\n",
       "      <td>148.00</td>\n",
       "      <td>4.6</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>[]</td>\n",
       "      <td>东华门大街11号</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>大碗居(东华门总店)</td>\n",
       "      <td>116.406017,39.915422</td>\n",
       "      <td>010-65250986;15801055013</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A7ZJE9</td>\n",
       "      <td>71.00</td>\n",
       "      <td>4.1</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>[]</td>\n",
       "      <td>前门东大街甲2号1-B1层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;快餐厅;肯德基</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050301</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>肯德基(前门东大街店)</td>\n",
       "      <td>116.400046,39.899696</td>\n",
       "      <td>010-67010282;4009200715;010-67011950</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A8WCAL</td>\n",
       "      <td>43.00</td>\n",
       "      <td>4.3</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>B0FFH14X68</td>\n",
       "      <td>东打磨厂街7号新活馆地下一层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>体育休闲服务;影剧院;电影院|餐饮服务;中餐厅;中餐厅</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>080601|050100</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>传奇创意餐厅(新活馆店)</td>\n",
       "      <td>116.413016,39.899721</td>\n",
       "      <td>[]</td>\n",
       "      <td>[]</td>\n",
       "      <td>B0FFHYJTGS</td>\n",
       "      <td>45.00</td>\n",
       "      <td>4.5</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>B0FFG4VH1T</td>\n",
       "      <td>前门西大街正阳市场3号楼(老舍茶馆旁)</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;中餐厅;中式素菜馆</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050120</td>\n",
       "      <td>...</td>\n",
       "      <td>西城区</td>\n",
       "      <td>素虎素食(前门店)</td>\n",
       "      <td>116.393174,39.899712</td>\n",
       "      <td>010-63010212</td>\n",
       "      <td>[]</td>\n",
       "      <td>B0FFHW9U5V</td>\n",
       "      <td>64.00</td>\n",
       "      <td>4.4</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>B0FFH14X68</td>\n",
       "      <td>东打磨厂街7号新活馆1层</td>\n",
       "      <td>[]</td>\n",
       "      <td>北京市</td>\n",
       "      <td>[]</td>\n",
       "      <td>diner</td>\n",
       "      <td>北京市</td>\n",
       "      <td>餐饮服务;快餐厅;麦当劳</td>\n",
       "      <td>[{'provider': [], 'title': [], 'url': 'http://...</td>\n",
       "      <td>050302</td>\n",
       "      <td>...</td>\n",
       "      <td>东城区</td>\n",
       "      <td>麦当劳(祈年大街得来速店)</td>\n",
       "      <td>116.412544,39.899665</td>\n",
       "      <td>010-67082846;010-67082346</td>\n",
       "      <td>[]</td>\n",
       "      <td>B000A8UI43</td>\n",
       "      <td>30.00</td>\n",
       "      <td>4.5</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>20 rows × 23 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "        parent                address distance pname importance biz_type  \\\n",
       "0           []          正义路8号(市政府斜对面)       []   北京市         []    diner   \n",
       "1           []  正义路东交民巷28号楼A座(首都宾馆北门)       []   北京市         []    diner   \n",
       "2           []         西长安街天安门广场西侧宴会厅       []   北京市         []    diner   \n",
       "3           []            南河沿大街103-1号       []   北京市         []    diner   \n",
       "4           []      台基厂大街10号(台基厂三条路口)       []   北京市         []    diner   \n",
       "5           []               北翔凤胡同11号       []   北京市         []    diner   \n",
       "6   B000A10FBB           东华门街道东长安街33号       []   北京市         []    diner   \n",
       "7           []               东交民巷44号院       []   北京市         []    diner   \n",
       "8   B000A83LNO           东长安街1号东方广场2层       []   北京市         []    diner   \n",
       "9   B000A10FBB        东长安街33号北京饭店C座7层       []   北京市         []    diner   \n",
       "10          []                东交民巷37号       []   北京市         []    diner   \n",
       "11          []                东交民巷44号       []   北京市         []    diner   \n",
       "12          []         南河沿大街华龙街中段111号       []   北京市         []    diner   \n",
       "13  B000A29433          东长安街10号长安大厦9层       []   北京市         []    diner   \n",
       "14  B0FFHLLAPG    南河沿大街华龙街E座贵宾楼北侧330米       []   北京市         []    diner   \n",
       "15          []               东华门大街11号       []   北京市         []    diner   \n",
       "16          []          前门东大街甲2号1-B1层       []   北京市         []    diner   \n",
       "17  B0FFH14X68         东打磨厂街7号新活馆地下一层       []   北京市         []       []   \n",
       "18  B0FFG4VH1T    前门西大街正阳市场3号楼(老舍茶馆旁)       []   北京市         []    diner   \n",
       "19  B0FFH14X68           东打磨厂街7号新活馆1层       []   北京市         []    diner   \n",
       "\n",
       "   cityname                         type  \\\n",
       "0       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "1       北京市             餐饮服务;中餐厅;四川菜(川菜)   \n",
       "2       北京市                餐饮服务;中餐厅;综合酒楼   \n",
       "3       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "4       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "5       北京市           餐饮服务;中餐厅;特色/地方风味餐厅   \n",
       "6       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "7       北京市                 餐饮服务;中餐厅;老字号   \n",
       "8       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "9       北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "10      北京市           餐饮服务;中餐厅;特色/地方风味餐厅   \n",
       "11      北京市                 餐饮服务;中餐厅;北京菜   \n",
       "12      北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "13      北京市               餐饮服务;外国餐厅;日本料理   \n",
       "14      北京市                 餐饮服务;中餐厅;火锅店   \n",
       "15      北京市                 餐饮服务;中餐厅;中餐厅   \n",
       "16      北京市                 餐饮服务;快餐厅;肯德基   \n",
       "17      北京市  体育休闲服务;影剧院;电影院|餐饮服务;中餐厅;中餐厅   \n",
       "18      北京市               餐饮服务;中餐厅;中式素菜馆   \n",
       "19      北京市                 餐饮服务;快餐厅;麦当劳   \n",
       "\n",
       "                                               photos       typecode  ...  \\\n",
       "0   [{'provider': [], 'title': [], 'url': 'http://...         050100  ...   \n",
       "1   [{'provider': [], 'title': '菜品', 'url': 'http:...         050102  ...   \n",
       "2   [{'provider': [], 'title': '产品图', 'url': 'http...         050101  ...   \n",
       "3   [{'provider': [], 'title': [], 'url': 'http://...         050100  ...   \n",
       "4   [{'provider': [], 'title': [], 'url': 'http://...         050100  ...   \n",
       "5   [{'provider': [], 'title': [], 'url': 'http://...         050118  ...   \n",
       "6   [{'provider': [], 'title': '产品图', 'url': 'http...         050100  ...   \n",
       "7   [{'provider': [], 'title': [], 'url': 'http://...         050116  ...   \n",
       "8   [{'provider': [], 'title': [], 'url': 'http://...         050100  ...   \n",
       "9   [{'provider': [], 'title': '产品图', 'url': 'http...         050100  ...   \n",
       "10  [{'provider': [], 'title': [], 'url': 'http://...         050118  ...   \n",
       "11  [{'provider': [], 'title': '产品图', 'url': 'http...         050111  ...   \n",
       "12  [{'provider': [], 'title': '产品图', 'url': 'http...         050100  ...   \n",
       "13  [{'provider': [], 'title': [], 'url': 'http://...         050202  ...   \n",
       "14  [{'provider': [], 'title': [], 'url': 'http://...         050117  ...   \n",
       "15  [{'provider': [], 'title': [], 'url': 'http://...         050100  ...   \n",
       "16  [{'provider': [], 'title': [], 'url': 'http://...         050301  ...   \n",
       "17  [{'provider': [], 'title': [], 'url': 'http://...  080601|050100  ...   \n",
       "18  [{'provider': [], 'title': [], 'url': 'http://...         050120  ...   \n",
       "19  [{'provider': [], 'title': [], 'url': 'http://...         050302  ...   \n",
       "\n",
       "   adname            name              location  \\\n",
       "0     东城区     隆和居美食城(正义路)  116.406575,39.903422   \n",
       "1     东城区            静园川菜  116.408019,39.902449   \n",
       "2     西城区        人民大会堂宴会厅  116.393711,39.904989   \n",
       "3     东城区      客家菜馆(南河沿店)  116.406420,39.909707   \n",
       "4     东城区       松鹤楼(台基厂店)  116.411862,39.903472   \n",
       "5     东城区      利群烤鸭店(前门店)  116.406198,39.898268   \n",
       "6     东城区         北京饭店宴会厅  116.408190,39.908770   \n",
       "7     东城区       东来顺(天安门店)  116.400135,39.900944   \n",
       "8     东城区     长安壹号(东方新天地)  116.415042,39.909957   \n",
       "9     东城区    北京饭店谭家菜(装修中)  116.408321,39.908792   \n",
       "10    东城区            仿膳饭庄  116.400006,39.902821   \n",
       "11    东城区    全聚德烤鸭店(天安门店)  116.400068,39.901436   \n",
       "12    东城区          毛小青美食城  116.407070,39.910850   \n",
       "13    东城区  日本桥怀石料理(东长安街店)  116.409096,39.907344   \n",
       "14    东城区       东来顺(华龙街店)  116.407130,39.911891   \n",
       "15    东城区      大碗居(东华门总店)  116.406017,39.915422   \n",
       "16    东城区     肯德基(前门东大街店)  116.400046,39.899696   \n",
       "17    东城区    传奇创意餐厅(新活馆店)  116.413016,39.899721   \n",
       "18    西城区       素虎素食(前门店)  116.393174,39.899712   \n",
       "19    东城区   麦当劳(祈年大街得来速店)  116.412544,39.899665   \n",
       "\n",
       "                                     tel shopid          id biz_ext.cost  \\\n",
       "0                           010-65263265     []  B000A7ZDMP        72.00   \n",
       "1               010-65244156;13910469318     []  B000A7I1TH        69.00   \n",
       "2                                     []     []  B000A8758C       882.00   \n",
       "3                                     []     []  B000A7WWYT        62.00   \n",
       "4              010-65279255;010-65278195     []  B000A7C2QO       180.00   \n",
       "5              010-67055578;010-67025681     []  B000A7ZRQ8       120.00   \n",
       "6              010-65137766;010-85009688     []  B000A81GNS           []   \n",
       "7                           010-65241042     []  B000A804YB       130.00   \n",
       "8                           010-65109608     []  B000A7BU0J       382.00   \n",
       "9                           010-65137766     []  B000A81JDJ           []   \n",
       "10             010-65233106;010-65233105     []  B000A6ECAC       206.00   \n",
       "11             010-65132855;010-65122265     []  B000A83BNF       170.00   \n",
       "12                          010-65129110     []  B000A2BB76        48.00   \n",
       "13                                    []     []  B000A83CQN       360.00   \n",
       "14                          010-65595084     []  B000A83BPC       148.00   \n",
       "15              010-65250986;15801055013     []  B000A7ZJE9        71.00   \n",
       "16  010-67010282;4009200715;010-67011950     []  B000A8WCAL        43.00   \n",
       "17                                    []     []  B0FFHYJTGS        45.00   \n",
       "18                          010-63010212     []  B0FFHW9U5V        64.00   \n",
       "19             010-67082846;010-67082346     []  B000A8UI43        30.00   \n",
       "\n",
       "   biz_ext.rating biz_ext.meal_ordering biz_ext.seat_ordering  \n",
       "0             4.3                     0                   NaN  \n",
       "1             4.0                     0                   NaN  \n",
       "2             4.5                     0                   NaN  \n",
       "3             3.4                     0                   NaN  \n",
       "4             4.1                     0                   NaN  \n",
       "5             3.5                     0                   NaN  \n",
       "6              []                     0                   NaN  \n",
       "7             3.4                     0                   NaN  \n",
       "8             4.0                     0                   NaN  \n",
       "9             4.0                     0                   NaN  \n",
       "10            3.9                     0                   NaN  \n",
       "11            4.0                     0                   NaN  \n",
       "12            3.5                     0                   NaN  \n",
       "13            4.4                     0                   NaN  \n",
       "14            4.6                     0                   NaN  \n",
       "15            4.1                     0                   NaN  \n",
       "16            4.3                     0                   NaN  \n",
       "17            4.5                     0                     0  \n",
       "18            4.4                     0                   NaN  \n",
       "19            4.5                     0                   NaN  \n",
       "\n",
       "[20 rows x 23 columns]"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import text\n",
    "pd.json_normalize(text(\"9df9a46a9a045c9bb332e3fc0019464e\",\"美食\"))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## IP定位（ip）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 请在高德平台上获取Key  \n",
    "必填参数：key  \n",
    "选填参数:ip,sig,output  \n",
    "具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/ipconfig"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'113.1017375,22.93212254;113.6770499,23.3809537'"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import ip\n",
    "ip(\"9df9a46a9a045c9bb332e3fc0019464e\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 静态地图（staticmap）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key，可使用geocode函数获取location的具体经纬度坐标,zoom范围为1-17  \n",
    "2、必填参数：key，location，zoom  \n",
    "3、选填参数:size,scale,markers,label,paths,traffic,sig  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/staticmaps"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<PIL.PngImagePlugin.PngImageFile image mode=P size=400x400 at 0x256BB4B6220>"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import staticmap\n",
    "staticmap(\"9df9a46a9a045c9bb332e3fc0019464e\",'114.088944,22.538509',15)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 坐标转换（convert）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key，locations为其他导航软件的具体经纬度坐标  \n",
    "2、必填参数：key，locations  \n",
    "3、选填参数:coordsys,sig,output  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/convert"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'113.685752,23.638368'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import convert\n",
    "convert(\"9df9a46a9a045c9bb332e3fc0019464e\",\"113.685752,23.638368\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 天气查询（weatherInfo）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key，city为城市编码，具体信息可参考城市编码表:https://lbs.amap.com/api/webservice/download  \n",
    "2、必填参数：key，city  \n",
    "3、选填参数:extensions,output  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/weatherinfo"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>province</th>\n",
       "      <th>city</th>\n",
       "      <th>adcode</th>\n",
       "      <th>weather</th>\n",
       "      <th>temperature</th>\n",
       "      <th>winddirection</th>\n",
       "      <th>windpower</th>\n",
       "      <th>humidity</th>\n",
       "      <th>reporttime</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>北京</td>\n",
       "      <td>北京市</td>\n",
       "      <td>110000</td>\n",
       "      <td>霾</td>\n",
       "      <td>9</td>\n",
       "      <td>西</td>\n",
       "      <td>≤3</td>\n",
       "      <td>68</td>\n",
       "      <td>2020-11-15 19:01:05</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "  province city  adcode weather temperature winddirection windpower humidity  \\\n",
       "0       北京  北京市  110000       霾           9             西        ≤3       68   \n",
       "\n",
       "            reporttime  \n",
       "0  2020-11-15 19:01:05  "
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import weatherInfo\n",
    "pd.json_normalize(weatherInfo(\"9df9a46a9a045c9bb332e3fc0019464e\",110000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 输入提示（inputtips）"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "> 1、请在高德平台上获取Key，  \n",
    "2、必填参数：key，keywords  \n",
    "3、选填参数:type,location,city,citylimit,datatype,sig,output,callback  \n",
    "4、具体输入格式请参照高德API文档：https://lbs.amap.com/api/webservice/guide/api/inputtips"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>name</th>\n",
       "      <th>district</th>\n",
       "      <th>adcode</th>\n",
       "      <th>location</th>\n",
       "      <th>address</th>\n",
       "      <th>typecode</th>\n",
       "      <th>city</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>B001403454</td>\n",
       "      <td>中山大学广州校区北校园</td>\n",
       "      <td>广东省广州市越秀区</td>\n",
       "      <td>440104</td>\n",
       "      <td>113.289848,23.128255</td>\n",
       "      <td>中山二路74号</td>\n",
       "      <td>141201</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>B03017WMXK</td>\n",
       "      <td>中山大学附属东华医院</td>\n",
       "      <td>广东省东莞市</td>\n",
       "      <td>441900</td>\n",
       "      <td>113.786305,23.030219</td>\n",
       "      <td>东城东路1号</td>\n",
       "      <td>090101</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>B02F402P24</td>\n",
       "      <td>中山大学珠海校区</td>\n",
       "      <td>广东省珠海市香洲区</td>\n",
       "      <td>440402</td>\n",
       "      <td>113.586266,22.349455</td>\n",
       "      <td>大学路</td>\n",
       "      <td>141201</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>B00140NUN1</td>\n",
       "      <td>中山大学附属第六医院</td>\n",
       "      <td>广东省广州市天河区</td>\n",
       "      <td>440106</td>\n",
       "      <td>113.364133,23.118252</td>\n",
       "      <td>员村二横路26号(院本部)</td>\n",
       "      <td>090101</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>B00141IHRZ</td>\n",
       "      <td>中山大学广州校区南校园</td>\n",
       "      <td>广东省广州市海珠区</td>\n",
       "      <td>440105</td>\n",
       "      <td>113.298395,23.096729</td>\n",
       "      <td>新港西路135号</td>\n",
       "      <td>141201</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>B00140KFHA</td>\n",
       "      <td>中山大学附属肿瘤医院</td>\n",
       "      <td>广东省广州市越秀区</td>\n",
       "      <td>440104</td>\n",
       "      <td>113.2901,23.131375</td>\n",
       "      <td>东风东路651</td>\n",
       "      <td>090207</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>B00140TAV2</td>\n",
       "      <td>中山大学南校区(北门)</td>\n",
       "      <td>广东省广州市海珠区</td>\n",
       "      <td>440105</td>\n",
       "      <td>113.300039,23.102687</td>\n",
       "      <td>新港西路135号中山大学南校区东北区398号</td>\n",
       "      <td>990000</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>B00140226E</td>\n",
       "      <td>中山大学附属第一医院院本部</td>\n",
       "      <td>广东省广州市越秀区</td>\n",
       "      <td>440104</td>\n",
       "      <td>113.291201,23.126353</td>\n",
       "      <td>中山二路58号</td>\n",
       "      <td>090101</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>B02F400ISX</td>\n",
       "      <td>中山大学附属第五医院</td>\n",
       "      <td>广东省珠海市香洲区</td>\n",
       "      <td>440402</td>\n",
       "      <td>113.573232,22.298373</td>\n",
       "      <td>梅华东路52号</td>\n",
       "      <td>090101</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>B0FFHGD85N</td>\n",
       "      <td>中山大学附属第八医院</td>\n",
       "      <td>广东省深圳市福田区</td>\n",
       "      <td>440304</td>\n",
       "      <td>114.079554,22.538748</td>\n",
       "      <td>深南中路3025号</td>\n",
       "      <td>090101</td>\n",
       "      <td>[]</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           id           name   district  adcode              location  \\\n",
       "0  B001403454    中山大学广州校区北校园  广东省广州市越秀区  440104  113.289848,23.128255   \n",
       "1  B03017WMXK     中山大学附属东华医院     广东省东莞市  441900  113.786305,23.030219   \n",
       "2  B02F402P24       中山大学珠海校区  广东省珠海市香洲区  440402  113.586266,22.349455   \n",
       "3  B00140NUN1     中山大学附属第六医院  广东省广州市天河区  440106  113.364133,23.118252   \n",
       "4  B00141IHRZ    中山大学广州校区南校园  广东省广州市海珠区  440105  113.298395,23.096729   \n",
       "5  B00140KFHA     中山大学附属肿瘤医院  广东省广州市越秀区  440104    113.2901,23.131375   \n",
       "6  B00140TAV2    中山大学南校区(北门)  广东省广州市海珠区  440105  113.300039,23.102687   \n",
       "7  B00140226E  中山大学附属第一医院院本部  广东省广州市越秀区  440104  113.291201,23.126353   \n",
       "8  B02F400ISX     中山大学附属第五医院  广东省珠海市香洲区  440402  113.573232,22.298373   \n",
       "9  B0FFHGD85N     中山大学附属第八医院  广东省深圳市福田区  440304  114.079554,22.538748   \n",
       "\n",
       "                  address typecode city  \n",
       "0                 中山二路74号   141201   []  \n",
       "1                  东城东路1号   090101   []  \n",
       "2                     大学路   141201   []  \n",
       "3           员村二横路26号(院本部)   090101   []  \n",
       "4                新港西路135号   141201   []  \n",
       "5                 东风东路651   090207   []  \n",
       "6  新港西路135号中山大学南校区东北区398号   990000   []  \n",
       "7                 中山二路58号   090101   []  \n",
       "8                 梅华东路52号   090101   []  \n",
       "9               深南中路3025号   090101   []  "
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from geo import inputtips\n",
    "pd.json_normalize(inputtips(\"9df9a46a9a045c9bb332e3fc0019464e\",\"中山大学\"))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {
    "height": "calc(100% - 180px)",
    "left": "10px",
    "top": "150px",
    "width": "243.81px"
   },
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
